package org.fjsei.yewu.jyjc.model;

import com.alibaba.fastjson2.annotation.JSONField;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

//import static com.fjtj.seip.framework.common.util.date.DateUtils.YYYY_MM_DD_HH_MM_SS;

/**
 * @author huangjinzhou
 * @since 2023/6/28 14:24
 */
@EqualsAndHashCode(callSuper = true)
@Data
@SuperBuilder(toBuilder = true)
@NoArgsConstructor
@AllArgsConstructor
public abstract class AbstractAmrPageQry extends AbstractDtApiReq {

    /**
     * 说明：当前记录起始索引
     * 数据类型及格式：PAGE_NUM
     * 是否必填：否
     **/
    @JSONField(name = "PAGE_NUM")
    private Integer pageNum;

    /**
     * 说明：每页显示记录数
     * 数据类型及格式：PAGE_SIZE
     * 是否必填：否
     **/
    @JSONField(name = "PAGE_SIZE")
    private Integer pageSize;

    /**
     * 说明：是否增量获取：0-实时获取，1-增量获取
     * 数据类型及格式：QUERY_TYPE
     * 是否必填：是
     **/
    @JSONField(name = "QUERY_TYPE")
    private Integer queryType = 0;

    /**
     * 说明：管道单元-开始日期 yyyy-MM-dd HH:mm:ss
     * 数据类型及格式：BEGIN_PIPE_DATE
     * 是否必填：否
     **/
    @JSONField(name = "BEGIN_DATE", format = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime beginDate;

    /**
     * 说明：增量时间-结束日期 yyyy-MM-dd HH:mm:ss
     * 数据类型及格式：END_DATE
     * 是否必填：否
     **/
    @JSONField(name = "END_DATE", format = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime endDate;
}
